Cellular Neural Networks or Cellular Nonlinear Networks (CNN) have been applied to many different fields and problems including, but limited to, image processing since 1988. However, most of the prior art CNN approaches are either based on software solutions (e.g., Convolutional Neural Networks, Recurrent Neural Networks, etc.) or based on hardware that are designed for other purposes (e.g., graphic processing, general computation, etc.). As a result, CNN prior approaches are too slow in term of computational speed and/or too expensive thereby impractical for processing large amount of imagery data. The imagery data can be from any two-dimensional signals (e.g., a still photo, a picture, a frame of a video stream, etc.).
For a CNN based IC for artificial intelligence, data must be provided as close to the CNN processing logic. In addition, different characteristics of data may be required. For example, in image processing, filter coefficients and imagery data have different requirements. Filter coefficients need to be validly stored for long time, while the imagery data are written and read more often.
Prior art approaches have problems and shortfalls. For example, SRAM (Static RAM) was used for storing imagery data. Flash memory was used for storing filter coefficients. However, integrating different memory technologies/types on a single silicon chip is not practical. Therefore, a new approach would be desirable.